1. Field of the Invention
The present invention relates to the field of relational objects and navigation via a user interface of a relational object hierarchy.
2. Description of the Related Art
In computing environments, various types of data structures are used to represent hierarchical data. One such data structure is a tree, which is relatively easy to navigate but is limited in the types of hierarchies it can represent. Another such structure is a graph, which is more versatile but is more difficult to represent and navigate.
Graphical controls are used in a variety of software programs (“software”) to allow a user to interact with the software and stored data by using a pointer (i.e., a mouse, touch pad, etc.) and manipulate or select a graphical control displayed on the user's display screen. The graphical control is often linked to data stored on the computer system. This method of data presentation and manipulation has proven to be an intuitive and efficient process for user interaction and modification of the underlying data. Accordingly, an interface that presents graphical control for navigation, display, and manipulation of hierarchical data is desirable.
Such an interface is useful in the context of software running locally on a users work-station. Such an interface is also desirable for system software applications that run on a network such as an intranet or the Internet. An increasingly popular feature for enterprise based system applications is to provide some subset of the application's functionality through a browser-based interface that can be used to gain access to data via the Internet, World Wide Web (the Web) portion of the Internet, intranets, extranets, or other computer network. In a network setting, the data often resides on a common server so that it can be shared with more than one user. The users' computer systems (clients) access the data residing on the server from separate computer systems connected to a computer network common to both the server computer system and the client computer systems. The client computer systems display graphical controls to the users representative of the data residing on the server computer system.
A challenge in using a browser-based interface is being able to provide web-based data displays and manipulation controls that require minimal resources on the client computer system. Interactive web-based controls that perform complex tasks have been implemented using Java applet or ActiveX technologies. These technologies require the client computer system to download considerable amounts of compiled code, requiring more processing time than many users are willing to tolerate.
Accordingly, an interface that allows display, navigation, and manipulation of hierarchical data without requiring complex graphical representations that require Java applet or ActiveX technologies would provide for relatively speedy navigation and retrieval of hierarchical information.
What is needed is a method of representing a plurality of hierarchies, wherein at least two of the hierarchies share a common node but have distinct sub-trees flowing from the common node, in a format that is relatively easy for a user to navigate and that requires as little processing time as possible.